package com.householdregister.people.domain;

import java.util.Date;
import com.fasterxml.jackson.annotation.JsonFormat;
import com.householdregister.common.annotation.Excel;
import com.householdregister.common.core.domain.BaseEntity;
import org.apache.commons.lang3.builder.ToStringBuilder;
import org.apache.commons.lang3.builder.ToStringStyle;

/**
 * 人员管理对象 people
 * 
 * @author zyj
 * @date 2022-02-22
 */
public class People extends BaseEntity
{
    private static final long serialVersionUID = 1L;

    /** $column.columnComment */
    private Long id;

    /** 人员姓名 */
    @Excel(name = "姓名")
    private String name;

    /** 曾用名 */
    @Excel(name = "曾用名")
    private String formerName;

    /** 性别 */
    @Excel(name = "性别")
    private String sex;

    /** 籍贯 */
    @Excel(name = "籍贯")
    private String regional;

    /** 国家 */
    @Excel(name = "国家")
    private String nation;

    /** 出生日期 */
    @JsonFormat(pattern = "yyyy-MM-dd")
    @Excel(name = "出生日期", width = 30, dateFormat = "yyyy-MM-dd")
    private Date birthday;

    /** 户籍地址 */
    @Excel(name = "户籍地址")
    private String address;

    /** 身份证号 */
    @Excel(name = "身份证号")
    private String idCard;

    /** 与户主的关系 */
    @Excel(name = "与户主的关系")
    private String relationship;

    /** 文化程度 */
    @Excel(name = "文化程度")
    private String educationLevel;

    /** 户籍Id */
    @Excel(name = "户籍Id")
    private Long householdRegisterId;

    @Excel(name = "户号")
    private String householdsNo;

    private String status;

    /**
     * 迁入迁出
     */
    private String residenceCategory;

    private Date outTime;

    public Date getOutTime() {
        return outTime;
    }

    public void setOutTime(Date outTime) {
        this.outTime = outTime;
    }

    /**
     * 迁出原因
     */
    private String outReason;

    public String getOutReason() {
        return outReason;
    }

    public void setOutReason(String outReason) {
        this.outReason = outReason;
    }

    public String getStatus() {
        return status;
    }

    public void setStatus(String status) {
        this.status = status;
    }

    public String getHouseholdsNo() {
        return householdsNo;
    }

    public void setHouseholdsNo(String householdsNo) {
        this.householdsNo = householdsNo;
    }

    public String getResidenceCategory() {
        return residenceCategory;
    }

    public void setResidenceCategory(String residenceCategory) {
        this.residenceCategory = residenceCategory;
    }

    public void setId(Long id)
    {
        this.id = id;
    }

    public Long getId() 
    {
        return id;
    }
    public void setName(String name) 
    {
        this.name = name;
    }

    public String getName() 
    {
        return name;
    }
    public void setFormerName(String formerName) 
    {
        this.formerName = formerName;
    }

    public String getFormerName() 
    {
        return formerName;
    }
    public void setSex(String sex) 
    {
        this.sex = sex;
    }

    public String getSex() 
    {
        return sex;
    }
    public void setRegional(String regional) 
    {
        this.regional = regional;
    }

    public String getRegional() 
    {
        return regional;
    }
    public void setNation(String nation) 
    {
        this.nation = nation;
    }

    public String getNation() 
    {
        return nation;
    }
    public void setBirthday(Date birthday) 
    {
        this.birthday = birthday;
    }

    public Date getBirthday() 
    {
        return birthday;
    }
    public void setAddress(String address) 
    {
        this.address = address;
    }

    public String getAddress() 
    {
        return address;
    }
    public void setIdCard(String idCard) 
    {
        this.idCard = idCard;
    }

    public String getIdCard() 
    {
        return idCard;
    }
    public void setRelationship(String relationship) 
    {
        this.relationship = relationship;
    }

    public String getRelationship() 
    {
        return relationship;
    }

    public void setEducationLevel(String educationLevel) 
    {
        this.educationLevel = educationLevel;
    }

    public String getEducationLevel() 
    {
        return educationLevel;
    }
    public void setHouseholdRegisterId(Long householdRegisterId) 
    {
        this.householdRegisterId = householdRegisterId;
    }

    public Long getHouseholdRegisterId() 
    {
        return householdRegisterId;
    }

    @Override
    public String toString() {
        return new ToStringBuilder(this, ToStringStyle.MULTI_LINE_STYLE)
            .append("id", getId())
            .append("name", getName())
            .append("formerName", getFormerName())
            .append("sex", getSex())
            .append("regional", getRegional())
            .append("nation", getNation())
            .append("birthday", getBirthday())
            .append("address", getAddress())
            .append("idCard", getIdCard())
            .append("createBy", getCreateBy())
            .append("createTime", getCreateTime())
            .append("updateBy", getUpdateBy())
            .append("updateTime", getUpdateTime())
            .append("relationship", getRelationship())
            .append("educationLevel", getEducationLevel())
            .append("householdRegisterId", getHouseholdRegisterId())
            .toString();
    }
}
